public class Edge  {
	private final String id; 
	private final Station source;
	private final Station destination;
	private final boolean transfer;
	private int weight; 
	
	public Edge(Station source, Station destination, boolean transfer, int weight) {
		this.id = new String(source.hashCode() + "" + destination.hashCode());
		this.source = source;
		this.destination = destination;
		this.transfer = transfer;
		this.weight = weight;
	}
	
	public String getId() {
		return id;
	}
	
	public Station getDestination() {
		return destination;
	}

	public Station getSource() {
		return source;
	}
	
	public boolean getTransfer() {
		return transfer;
	}
	
	public int getWeight() {
		return weight;
	}
	
	@Override
	public int hashCode() {
		return id.hashCode();
	}
	
	@Override
	public boolean equals(Object obj) {
		Edge other = (Edge)obj;
		if(this.hashCode() == other.hashCode()) {
			return true;
		} else {
			return false;
		}
	}
	
	@Override
	public String toString() {
		return "From: " + source + "\nTo " + destination;
	}
	
	
}